import re

def reg_search(text, regex_list):
    result = {}

    # 提取标的证券
    if regex_list and len(regex_list) >= 1:
        Bdzq_pattern = regex_list[0]
        Bdzq_text = re.search(Bdzq_pattern, text)
        if Bdzq_text:
            result['标的证券'] = Bdzq_text.group(1)

    # 提取换股期限
    if regex_list and len(regex_list) >= 2:
        date_pattern = regex_list[1]
        date_text = re.search(date_pattern, text)
        if date_text and len(date_text.groups()) >= 6:
            # 起始日期
            start_year = date_text.group(1)
            start_month = date_text.group(2).zfill(2)
            start_day = date_text.group(3).zfill(2)
            start_date = f"{start_year}-{start_month}-{start_day}"

            # 结束日期
            end_year = date_text.group(4)
            end_month = date_text.group(5).zfill(2)
            end_day = date_text.group(6).zfill(2)
            end_date = f"{end_year}-{end_month}-{end_day}"

            result['换股期限'] = [start_date, end_date]

    return [result]


if __name__ == '__main__':
    text = """
    标的证券：本期发行的证券为可交换为发行人所持中国长江电力股份
    有限公司股票（股票代码：600900.SH，股票简称：长江电力）的可交换公司债券。
    换股期限：本期可交换公司债券换股期限自可交换公司债券发行结束
    之日满 12 个月后的第一个交易日起至可交换债券到期日止，即 2023 年 6 月 2
    日至 2027 年 6 月 1 日止。
    """
    text = text.replace(" ", "")
    text = text.replace("\n", "")
    regex_list = [
        r"股票代码：(\d+\.\w+)",  # 600900.SH
        r"(\d{4})年\s*(\d{1,2})月\s*(\d{1,2})日.*?(\d{4})年\s*(\d{1,2})月\s*(\d{1,2})日"  # xxxx年xx月xx日
    ]
    result = reg_search(text, regex_list)
    print(result)